--- %%NOBANNER%% -->
![]() | ![]() |
/*-------------------<---Start of Description-->---------------------\ | Clear the bookmarked table or the current table; | |---------------------<---End of Description-->----------------------| |--------------------------------------------------------------------| |------------<---Start of Files or Arguments Needed-->---------------| | Argument: | | bmark: a name of table you want to cleared; | | wordref: word reference; not necessary default is "wordsys"; | | Note: space will be read as a part of the book mark | | if no bookmark is entered, then clear the current table. | | wordref: you can specify window reference, default if "wordsys";| | Note: the wordref must be the 2nd paramter; | |-------------<---End of Files or Arguments Needed-->----------------| |--------------------------------------------------------------------| |------------------<---Start of Files Created-->---------------------| | Example: %cleartable('t1'); | | Usage: %cleartable(bmark,wordref); | \-------------------<---End of Files Created-->---------------------*/ %macro cleartable/parmbuff; /*--------------------------------------------\ | Author: Duo Zhou; | | Created: 2-27-2001 8:26pm; | | Purpose: Clear a table; | \--------------------------------------------*/ %local fref wsid rc; %let bookmark=%qscan(&syspbuff,1,%str(,()''"")); %let fref=;%let wsid=0; %if %words(&syspbuff, dlm=%quote(,()))>1 %then %do; %let fref=%qscan(&syspbuff,-1,%str(,()''""= )); %end; %else %do; %let fref=wordsys; %end; %if (%quote(&bookmark) ne) %then %do; %gotobmark("&bookmark"); %end; %if (&fref ne ) %then %do; %let wsid=%sysfunc(fopen(&fref,o,132,e)); %end; %if &wsid %then %do; %let rc=%sysfunc(fclose(&wsid)); data _null_; file &fref lrecl=2000; put '[TableSelectTable]'; put '[EditClear]'; run; %end; %else %do; %put ==> Alert! Incorrect window reference "&fref", or window "&fref" isn%str(%')t open.; %end; %mend cleartable;